一种多接口的移动组播方法,在移动实体上构建组播状态信息库和转发信息库以提供高效的移动组播服务,通过多个接口的有效配置,为每个接口建立不同的组播状态。有移动实体的接口状态转换步骤,有在MN上构建三种组播状态即BT态、RS态和空闲态的步骤,定义了与组播传输有关的三种状态,有通过多接口之间的交互协作步骤,实现BT和RS的优化组合。移动实体既可以是一个移动节点MN,也可以是一个移动网络。本发明能够实现无缝的移动组播切换。同时,可以在多个接口之间制定不同的策略以满足不同用户的服务要求。该技术方案能够在列车、城铁、公交车、飞机等网络中提供良好的组播支持,提供移动会议、移动IPTV、移动在线游戏等多种服务。
1.一种多接口的移动组播方法,其特征是:有移动实体的接口状态转换 步骤,有在移动实体上构建三种组播状态即BT态、RS态和空闲态的步骤,有 通过多接口之间的交互协作步骤。
2.根据权利要求1所述的一种多接口的移动组播方法,其特征是:包括 如下步骤;步骤1:对移动实体的多个接口中有一个接口(IF1)接入到网络中获 取组播服务,则该实体的其他接口(IF2)不断的执行扫描过程,直到找到新接入 网络,转步骤2; 步骤2:当该实体接入到新AR后,移动实体将通过接口(IF2)发送一个未请 求的MLDxa0Report消息,通过接口(IF2)加入到组播组,转步骤3,否则转步骤 1; 步骤3:当移动实体从接口(IF2)获得该组播组的数据后,将根据组播转发 信息库中对应组播组的接口列表转发组播数据,并继续通过隧道转发组播数据, 转步骤4,否则转步骤2; 步骤4:移动实体从接口(IF2)获取到组播数据后,将通过隧道发送MLD done消息,停止从隧道获取组播数据,转步骤5; 步骤5:移动实体的接口(IF2)通过RS方式转发组播数据,并监控其接入 点是否发生变化,若没有变化,则转步骤5,否则通过PCoA-NCoA隧道转发 组播包,转步骤6; 步骤6:移动实体的接口(IF1)将执行同接口(IF2)相同的过程,由此一直 循环执行,多个接口交替加入组播组。
3.根据权利要求1或2所述的一种多接口的移动组播方法,其特征是: 移动实体即可以是一个移动节点MN,也可以是一个移动网络。
4.根据权利要求1或2所述的一种多接口的移动组播方法,其特征是: 有MN在移动过程中利用各个接口新旧接入AR之间构建短隧道,并缓存组播 数据包步骤。 技术领域 本发明涉及一种多接口的移动组播方法,属于网络技术领域。 背景技术 组播作为一种有效利用带宽资源的数据传输技术自出现以来一直是研究的 热点问题之一。组播的目的是提供一种有效的组通信方式,组中的每个节点都 可以随时加入或离开组,通过在组播路由器上复制和转发组播数据来减收网络 中重复数据的传输,提高网络资源的利用率。组播和单播的区别是单播往一个 接口转发而组播则是向一组接口转发。组播的最初设计针对的是固定节点,没 有考虑到组成员的移动性。随着移动IP、移动子网(NEMO)等移动性支持技术 的出现,移动组播技术逐渐进入人们的视野并成为了一个研究的热点,大量的 移动组播方案相继被提出。 移动组播方案按照其组播数据转发方式可以分为四类:一是基于双向隧道 (简称BT)的方案;二是基于远程加入(简称RS)的方案;三是结合BT和RS的 组播代理方案;四是基于上层协议的方案。 基于BT的移动组播方案利用移动IP构建的双向隧道传输组播相关信息如 组成员加入消息/组播侦听发现(IGMP/MLD)消息等。在MN移动过程中,不需 要重构组播转发树,不需要外地网络支持组播服务。但是,隧道方式采用单播 封装组播包,存在延时和开销较大、路由不优化等问题,降低了组播的效率。 基于RS方式的移动组播方案是指移动节点(简称MN)移动到外地后,直接 向外地网络发送组播加入消息,重新加入到组播组。此类方案能够提供优化的 组播路由,但需要重构组播转发树,尤其是当MN移动速度过快时,频繁重构 会造成开销过大,组播数据包丢失严重等问题。 组播代理方案是在BT和RS之间折中,采用不同的算法在MN的移动路线 上选出组播代理节点,利用组播代理为MN转发组播数据,减少BT方式中隧道 的长度和RS方式中组播树的重构次数。这类方案目前研究的比较多,组播性能 比较好,但是,组播代理的选择和维护增加了部署移动组播的难度。 基于上层协议的方案主要是指在IP层之上提供移动组播服务,这类方案的 实质是利用单播实现组播,已经脱离了组播协议的设计初衷,但其易于实际的 部署,并且能够提供类似于组播的服务。不过,此类方式的扩展性明显低于上 述三种方案,尤其是当组播用户或组播组较多时,重复数据的传输会造成网络 带宽利用率低下并有可能引发网络拥塞等问题。 上述研究主要是针对单个接口的移动实体进行的,关于多接口的组播技术目 前相关的研究还比较少。多接口是多家乡的一种情况,多家乡指的是一个节点 有多个IPv6地址或它连接的链路上存在多个网络前缀,或者该节点有多个接 口。对于MN而言则有多个HoAs(即家乡链路上有多个前缀或它有多个接口连 接到不同的家乡链路上)或者MN有多个CoAs(即外地链路上有多个前缀或MN 有多个接口接到外地链路上)。一般来说,可以用二元组(x,y)对多家乡进行分 类,其中x和y分别表示HoA和CoA的数量(取值为1或n,其中n>1)。 多个接口可以提供普适的、持续的和容错的Internet接入,特别是对于易于实 效或突然失去连接的移动实体而言,能够提高Internet连接的可靠性和鲁棒性, 但目前MIPv6和NEMO都缺少对多家乡节点的支持。 为此,本发明提出了一种适用于移动节点的多接口的移动组播方案。 现有技术一的技术方案: Thomasxa0C.Schmidt等提出了基于HMIPv6的移动组播方案M-HMIPv6, 在MN上接收和传输任意源组播(简称ASM)流量。它利用本地移动锚点(简称 MAP)为移动组播侦听者和移动组播源提供切换。MAP与HMIPv6中的代理机 制类似,组播接收者可以从直接接收数据以优化组播路由。该方案与组播路由 协议无关,只是在现有的HMIP、MIPv6和MLDv2的基础上做了微小的改动。 HMIPv6环境中的MAP是一个代理节点,可以看作是区域路由器。为了提供 组播移动性支持,区域路由器最好能提供组播路由功能。MN使用MAP作为组播 通信的锚点。组播用户或组播源使用区域转交地址(简称RCoA)进行通信,所有 的组播流量直接通过MAP,并通过MN和MAP之间的隧道转发流量。如果MN在 MAP域内改变了位置,它只用向它的MAP注册新的本地转交地址(简称LCoA), 而不影响组播转发树。当MN进入到一个新的MAP域时,MN将通过它的前一个 MAP支持组播的连通性。当MN移动到一个新的具有M-HMIPv6功能的MAP域 时将执行组播切换过程,并将组播流量从前一个MAP转发到当前的MAP。MN 应该优先使用它的HA作为组播锚点,当MAP不支持M-HMIPv6功能,则用该 MAP作为组播锚点,但使用MIPv6隧道传输组播数据。 当MN离开家乡后想要加入组播组,它通过隧道给当前的MAP发送MLD report消息,以RCoA作为源地址。MAP为了转发组播数据给MN,将在它 的绑定缓存中记录相应的组地址。当MN移动到其它MAP域时,除了需要正常 的HMIPv6切换信令外,MN将给它的前一个MAP提交一个带有它的新LCoA 的绑定更新(简称BU)。前一个MAP上收到的数据将重定向到它当前的位置。 当新的MAP域支持组播时,MN将通过新MAP快速的加入到组播组。一旦收 到组播组数据,MN就向它的前一个MAP发送一个有效时间为0的BU,删除 绑带缓存并停止数据转发。 当MN离开家乡后想发送组播数据到某个组,MN就以RCoA作为源地址通 过它的MAP发送数据包,由MAP构建到组播接收者的组播路由树。但在移动 过程中RCoA可能发生改变,所以必须包含一个家乡地址选项(接收者知道源地 址)。当移动源在MAP域内的移动时,组播路由树不发生变化。当移动源到达 一个新的MAP域后,它将向前一个建立好组播转发的MAP提交一个带有其新 LCoA的BU,通过前一个MAP继续传输组播数据。如果新的MAP域支持组播 功能,则将用新的RCoA迅速的发起组播路由树建立过程。当移动源通过新MAP 转发组播数据后将停止向它的前一个MAP转发数据。 该技术方案主要是利用HMIPv6中MAP实体,将其作为一个组播代理保持 MN与固定组播网络之间的数据交互。当MN在MAP域内移动时,组播转发树 不发生变化,MN和MAP之间通过隧道传输;当MN移动到另外一个MAP域 后,若该MAP节点支持组播,则立刻加入到组播组重构组播转发树,在新的 MAP获取组播数据之前,MN通过与前一个MAP的隧道获取组播数据。一旦新 的MAP开始转发组播数据,MN则向前一个MAP发送一个有效时间为0的BU 删除该绑定缓存项。 现有技术一的缺点: 1、不支持多家乡; 2、MN与MAP之间始终采用隧道方式传播组播数据,但当MAP域内同时 有多个MN加入到该组播组时,则会存在隧道聚合问题,数据传输效率低; 现有技术二的技术方案: F.Xia等提出了扩展FMIPv6支持快速组播切换方案MFH(Multicastxa0Fast Handover)。在该方案中,MN使用它的转交地址(简称CoA)通过本地组播路 由器加入到组播组中。在切换过程中,前一个接入路由器(简称PAR)发送MN 的MLD状态给新的加入路由器(简称NAR)预先帮助NAR建立组播转发树,当 完成切换后PAR将缓存的组播数据通过隧道传给NAR。 在MFH中,移动节点使用CoA加入到组播组,并对FMIPv6进行了如下 的扩展: 在切换过程中PAR给NAR发送MLD状态; PAR将所有的组播数据通过隧道传给NAR; 在切换过程中,NAR收到MLD状态后就开始建立组播转发树 该技术方案中其主要功能实体的信息交互流程如图2所示: 其预先模式的快速切换过程如下: 通过代理路由器请求(简称RtSolPr)和代理路由器通告(简称PrRtAdv)的 交互,MN获得NCoA以及NAR的相关信息; 利用快速绑带更新(简称FBU)消息建立PCoA到NCoA的隧道,将到达的 数据包通过隧道转发到MN的当前的位置。收到FBU后,PAR发送包含组播组 信息选项(简称MGIO)的切换发起(简称HI)消息。该选项包含MN所属的组播 组和其它MLDv2所需的信息; 该HI选项将触发NAR检查MGIO,若NAR已经加入了该组播组则继续下 面操作,否则NAR需要为所有的组播组构建组播路由树; 当收到切换确认(简称HAck)消息后,PAR必须将它缓存的所有组播流量通 过隧道转发给NAR; 收到快速邻居通告(简称FNA)后,NAR将收到的缓存数据包转发给MN; 当MN接入到NAR后,MN就是用它的NCoA发起组播信令的交互过程。 同时,MN接收从PAR发送过来的组播数据。当新的组播转发后建成后,PAR 将停止从隧道转发组播数据,而NAR将直接发送组播数据给MN; 其反应模式的切换过程也类似。在预先模式中,当MN没有从前一个链路上 收到FBack时,MN则将含有MGIO选项的FBU封装在FNA中发给PAR, PAR收到后就建立一条到MN的隧道并转发相关的组播数据流量给MN。同时, MN将用NCoA在外地链路发起组播加入过程,一旦NAR构建了相应的组播转 发树,它就直接转发组播流量给MN。 现有技术二的缺点: 1、不支持多家乡; 2、需要二层技术的支持,需要在发生二层切换时能为上层提供相关的信息。 发明内容 为了克服现有技术的不足,本发明提供一种多接口的移动组播方法。 本发明提出了一种基于BT和RS的多接口移动组播路由方案,旨在提供无缝 的移动组播服务。多接口的移动实体可以利用多接口之间的垂直切换或水平切 换实现普适的移动性支持,并能实现无缝切换。本方案在移动实体上构建组播 状态信息库和转发信息库以提供高效的移动组播服务,通过多个接口的有效配 置,为每个接口建立不同的组播状态。 本发明解决其技术问题所采用的技术方案是:一种多接口的移动组播方法, 有移动实体的接口状态转换步骤,有在MN上构建三种组播状态即BT态、RS态 和空闲态的步骤,定义了与组播传输有关的三种状态,有通过多接口之间的交 互协作步骤,实现BT和RS的优化组合。移动实体即可以是一个移动节点MN, 也可以是一个移动网络。 包括如下步骤; 步骤1:假设移动实体的多个接口中有一个接口(记为IF1)接入到网络中获 取组播服务,则该实体的其他接口(记为IF2)不断的执行扫描过程,直到找到新 接入网络,转步骤2; 步骤2:当该实体接入到新AR后,移动实体将通过IF2发送一个未请求的 MLDxa0Report消息(IPv4网络中是未请求的IGMPxa0Report消息),通过IF2加 入到组播组,转步骤3,否则转步骤1; 步骤3:当移动实体从IF2获得该组播组的数据后,将根据组播转发信息库 中对应组播组的接口列表转发组播数据,并继续通过隧道转发组播数据,转步 骤4,否则转步骤2; 步骤4:移动实体从IF2获取到组播数据后,将通过隧道发送MLD done(IPv4网络中是IGMPxa0done)消息,停止从隧道获取组播数据,转步骤5; 步骤5:移动实体的IF2通过RS方式转发组播数据,并监控其接入点是否 发生变化,若没有变化,则转步骤5,否则通过PCoA-NCoA隧道转发组播包, 转步骤6; 步骤6:移动实体的IF1将执行同IF2相同的过程,由此一直循环执行,多 个接口交替加入组播组,实现组播数据的无缝切换。 本方案涉及到前提条件如下: MN同时存在多个外出接口; 多个接口中同时至少有一个能够提供Internet连接服务; 多个接口之间可以实现流量重定向; 本方案主要是针对IPv6展开讨论的,也可以应用于IPv4。 本发明的有益效果:本发明提供了一种多接口移动组播实施方案,基于基本 的移动组播技术BT和RS,充分利用了两者的优点,结合快速移动IP的方法, 能够实现无缝的移动组播切换。同时,可以在多个接口之间制定不同的策略以 满足不同用户的服务要求。该技术方案能够在列车、城铁、公交车、飞机等网 络中提供良好的组播支持,提供移动会议、移动IPTV、移动在线游戏等多种服 务。 附图说明 图1M-HMIPv6信息交互图。 图2快速组播切换FMH预先切换信息交互图。 图3移动实体接口状态转换图。 图4两接口状态转换图。 图5多接口MN移动组播工作流程。 下面结合附图和实施例对发明进一步说明。 具体实施方式 实施例1: 移动实体接口状态: 移动实体在传输组播数据时其对应的外出接口有两种状态,一是隧道传输状 态(简称BT态),组播数据通过隧道传输;二是RS传输状态(RS态),移动实 体在外地网络加入到组播组中直接获取组播数据。假设移动实体没有组播信息 传输的状态为空闲态,则这三个状态之间的状态转换图如图3所示。 假设移动实体处于空闲态,若一直没有收到组播加入消息则一直处于空闲 态。当移动实体在家乡网络收到组播加入消息时,则进入RS态;当它在外地网 络收到加入消息时,将进入BT态。在BT态时,若没有收到组转发更新消息, 则将一直处于BT态;若收到组转发更新消息或者组播完成消息则进入空闲态; 若在当前的位置(家乡或者外地链路)直接加入到组播组,则进入到RS态。在 RS态,若其接入点没有发生变化则一直处于该状态;若其接入点发生变化且该 组播组对应的其它接口都不在RS态则进入BT态;若收到组播完成消息则进入 空闲态。上述过程是针对的是移动实体加入的某一个组播组,移动实体同时可 能加入多个组播组。 移动实体上保存的数据库信息: 每个移动实体需要保存两个数据库:组成员信息库和组播转发信息库。 组成员信息库:汇集移动实体上所有的组成员信息,记录该实体上各个接口 上存在的组播组的信息,主要记录格式为(组播组地址,源地址列表,过滤模式, 组播状态)如表1所示。前三项是为了确定一个特定组播组信息,而组播状态则 记录目前该组播组是通过何种方式进行传输,即该组播组所处的状态。 表1组成员数据库的记录格式
xa0xa0接口名称
xa0xa0接口的系统ID
xa0xa0接口的地址
xa0xa0组播组地址
xa0xa0组播组的源地址
xa0xa0组过滤模式
xa0xa0组播状态
组播转发信息库:用于记录与组播组对应的转发接口信息,主要记录格式为 (组播地址,接口列表)如表2所示。当移动实体收到某个组播组的数据后,根 据该转发接口信息转发组播数据。若移动实体是移动节点,则该接口列表为空, 即移动实体为组播侦听者;若移动实体是移动子网,则该接口列表就记录该子 网内部的存在组播侦听者的接口。 表2组播转发库记录格式
xa0xa0组播组地址
xa0xa0组播组的源地址
xa0xa0组过滤模式
xa0xa0组播状态
xa0xa0接口列表
假设一个移动实体有两个接口Interface1和Interface2(简记为接口IF1 和接口IF2),移动实体在家乡通过接口IF1加入到某个组播组中,当移动节点 移动到外地接入到AR1时,MN将通过接口IF1到HA的双向隧道转发组播数 据。当接口IF2接入到AR2后,接口IF2将从通过AR2加入到组播组中转发 组播数据到指定的接口列表。当接口IF2的接入点发生变化后,将通过PCoA 到NCoA之间的隧道转发组播数据。 两接口状态转换图: 我们假设移动实体有两个接口,则这两个接口之间的状态转换图如图4所示。 对于同一个组播组,接口IF1和接口IF2交替在当前的位置加入到组播组以实现 以RS态传播组播数据。若无法实现RS加入则采用BT方式加入。 两接口的移动组播流程: 假设其有两个接口IF1和接口IF2可以接入到Internet上,这两个接口可 以是同种类型的也可以是不同类型的(如WLAN、GPRS、CDMA以及WiMAX 等)。对于移动实体侦听的某一个组播组而言,假设最初是由接口IF1通过隧道 转发该组播数据,则该方案的流程图如图5所示: 1、接口IF2不断的扫描新AP,接入到新的AR上; 2、接入到新AR后,移动实体将通过接口IF2发送一个未请求的MLD Report消息,通过接口IF2加入到组播组; 3、当移动实体从接口IF2获得该组播组的数据后,将根据组播转发信息 库中对应组播组的接口列表转发组播数据;否则继续通过隧道转发组播数 据; 4、从接口IF2直接获取到组播数据后,移动实体通过隧道发送MLD done消息,停止从隧道加入组播组; 5、接口IF2在新AR上通过RS方式转发组播数据,并监控其接入AR 是否发生变化,若发生变化则通过PCoA-NCoA隧道转发组播包; 6、接口IF1将不断扫描新的AR,执行同接口IF2相同的过程,由此一 直循环执行,接口IF1和接口IF2交替加入组播组,实现组播数据的无 缝切换。 两类组播隧道: 1、正常的MIP或NEMO隧道: 当移动网络首次离开家乡链路到外地时,将构建的双向隧道,两端的地址分 别是HA的地址和MN的CoA,组播数据通过该隧道传输直到构建组播转发结 构到外地网络。隧道的构建方法即为移动IPv6协议或NEMO协议中规定的方 法。 2、PCoA和NCoA之间的隧道: 移动实体在外地网络连续移动时将构建PCoA和MN的NCoA地址,通过该隧 道处理外地网络不支持组播的情况,以保证组播的连续性,减少组播数据的丢 包率。这种隧道的建立方法可以参照快速移动IP的方法。MN将要离开PAR时, 检测到NAR后迅速的发出FBU消息给PAR在PCoA和NCoA之间建立了一个隧 道,这样PAR就开始将到达的数据(单播数据或组播数据)由PCoA发送给NCoA, 这个隧道一直存在到它的另外一个接口处于RS状态才终止。本方案利用该隧道 传输组播数据直到该组播组进入RS态为止。为此,在快速移动IP的基础上本方 案对该隧道的使用期限进行了条件限制,引入了新的触发机制删除隧道,即移 动实体上所有的组播组进入RS态,发送一个生存时间lifetime为0的FBU给 PCoA。从而,当移动实体上所有传输的组播组都处于RS态时,将删除该隧道 并从当前的AR获取组播数据。 缩略语和关键术语定义 AP:Accessxa0Point,接入点; AR:Accessxa0Router,接入路由器; ASM:Anyxa0Sourcexa0Multicast,任意源组播; BT:Bi-directionalxa0tunnel,双向隧道; CoA:Carexa0ofxa0Address,转交地址; FMIP:Fastxa0Mobilexa0IP,快速移动IP; HMIP:Hierarchicalxa0Mobilexa0IP,层次移动IP; HoA:Homexa0Address,家乡地址; IGMP:Internetxa0Groupxa0Membershipxa0Protocol,组成员管理协议; IF:Interface,接口; MANET:Mobilexa0Adxa0Hocxa0NETworking,移动Adxa0hoc网络; MAP:Mobilexa0Anchorxa0Point,移动锚点; MFH:Multicastxa0Fastxa0Handover,组播快速切换; MLD:Multicastxa0Listenerxa0Discovery,组播侦听发现; MN:Mobilexa0Node,移动节点; MR:Mobilexa0Router,移动路由器; NEMO:NEtworkxa0MObility,子网移动; PAN:Personalxa0Areaxa0Network,个域网; PAR:Previousxa0AR,前一个AR; NAR:Newxa0AR,新的AR; RS:Remotexa0Subs
cription,远程加入; RP:Rendezvousxa0Point,汇聚点; SSM:Sourcexa0Specifyxa0Multicast,特定源组播。